<
language> An experimental, very high level, integrated
language and system from the
IBM Watson Research Centre,
produced in June 1990. It is designed for implementation of
large systems and distributed applications, as well as for
general-purpose programming. It is an
imperative language,
strongly typed and is a
process-oriented successor to
NIL.
Hermes hides distribution and heterogeneity from the
programmer. The programmer sees a single
abstract machine
containing processes that communicate using calls or sends.
The
compiler, not the programmer, deals with the complexity
of data structure layout, local and remote communication, and
interaction with the
operating system. As a result,
Hermes
programs are portable and easy to write. Because the
programming paradigm is simple and high level, there are many
opportunities for optimisation which are not present in
languages which give the programmer more direct control over
the machine.
Hermes features
threads,
relational tablesHermes is,
typestate checking,
capability-based access and {dynamic
configuration}.
Version 0.8alpha patchlevel 01 runs on
RS/6000,
Sun-4,
NeXT,
IBM-RT/
BSD4.3 and includes a
bytecode compiler,
a bytecode->C compiler and
run-time support.
{
hermes">0.7alpha for Unix
(ftp://software.watson.ibm.com/pub/hermes)}.
E-mail: <
hermes-request@watson.ibm.com>, Andy Lowry
<
lowry@watson.ibm.com>.
Usenet newsgroup:
news:comp.lang.hermes.
[
"Hermes: A Language for Distributed Computing". Strom,
Bacon, Goldberg, Lowry, Yellin, Yemini. Prentice-Hall,
Englewood Cliffs, NJ. 1991. ISBN: O-13-389537-8].
(1992-03-22)